草庐IT

c++ - 小数位数之和

全部标签

c++ - 如何使用 _TCHAR* 作为文件名打开文件? C/C++

我的主要签名如下:int_tmain(intargc,_TCHAR*argv[])我想执行以下操作:FILE*inputFilePtr;inputFilePtr=fopen(argv[2],"_r");但是类型不匹配。我应该怎么做?我应该使用:inputFilePtr=_tfopen(argv[2],??????);谢谢! 最佳答案 使用:_tfopen(argv[2],TEXT("r"));不要使用:_tfopen(argv[2],L"r");如果宏UNICODE没有定义,第二个会给出编译错误,即当TCHAR只是char,而不是w

c++ - 一组根据操作数类型而不同名称的函数可以在C语言中称为理论上的静态多态吗?

是否一组函数只做一个词但名称不同,如atoi、atol、atoll等理论上称为多态?例如,我有一个函数swap需要对不同类型的数据进行操作。所以我有一个函数/操作,我有不同的实现,但不幸的是,因为语言不支持使用相同的函数名称,为了获得这样的功能,我需要制作变体swap_i,swap_l、swap_f、swap_str等等,必须根据操作数手动调用它们。在设计代码时,人们会将其设计为一个函数,具有不同的实现,根据操作数调用。但在这种情况下,程序员而不是编译器需要对函数进行静态绑定(bind)。如果程序员用C++实现它,那么设计将是相同的(因为他/她遵循了OOD方法),但在这种情况下,静态绑

c++ - 有序双向链表搜索

假设我们有按整数值排序的双向链表:structListItem{intvalue;ListItem*prev,*next;};structList{ListItem*first,*last;intcount;};我们能否使用更快的搜索算法(例如二分搜索)在List中定位ListItem以及如何定位? 最佳答案 出于大多数实际目的,不会。如果你想要更快的搜索,链表是一个糟糕的数据结构选择。考虑使用vector、deque、set或multiset。编辑:也许最好提供一些指导,说明哪些在什么时候有意义。如果您有两个基本独立的阶段,则ve

c++ - 适用于 Windows 的可移植 C/C++ 应用程序的 DLL 依赖项

我想用C/C++为Windows创建一个轻量级的可移植应用程序。我不想静态链接所有内容,因为我想让exe的大小尽可能小。我也用DependencyWalker跟踪我的exe文件的DLL依赖项。我的问题是,应用程序可以拥有并在不同版本的Windows之间保持可移植性的DLL依赖项列表是什么?有了这个列表,我可以用列表检查DependencyWalker的输出,并选择要静态链接的库和动态链接的库。我更喜欢包含WindowsXP操作系统的列表,但考虑到Windows98也很有趣。 最佳答案 在VisualStudio之类的工具中创建一个基

c++ - 如何在 Arduino 上格式化长加千位分隔符

我正在Arduino上开发一个项目,该项目从远程WebAPI解析一些JSON数据,并将其显示在16x2LCD上。我想格式化一个用TextFinder解析的long添加千位分隔符(逗号分隔符即可)。简而言之,我该如何编写formatLong函数?longlongToBeFormatted=32432423;formattedLong=formatLong(longToBeFormatted);//Howtoimplementthis?lcd.print(formattedLong)//formattedLongisastring 最佳答案

c# - 什么是值继承和引用继承?

刚刚有人问我这个问题,但是我是一个C#程序员,我只知道类继承....我想知道这个东西只适用于C/C++吗?通过引用继承是否意味着我们创建一个ClassA然后从这个ClassA继承ClassB?它们究竟是什么?=====编辑以使其清楚:这是我friend得到的问题上下文,他正在做C编程测试:"Therearetwotypesofinheritance:inheritancebyvalueandinheritancebyreference.Showhowtodesignaclasstoimplementinheritancebyreference"所以我假设,这应该与C/C++有关……但我

c++ - C/C++结构问题

假设您有一个.cpp文件(即使用MSVC等C++编译器编译)。在该文件中,您按以下方式定义了一个struct:structPixel{floatx,y;};在同一个文件中,您有一行代码将调用一个C函数,该函数需要一个等于Pixel的Cstruct。如果你写:Pixelmy_pixel//setmy_pixeltosomethingc_func(&my_pixel);会成功吗?我的意思是,C++编译器将创建对象my_pixel,但它会将其传递给编译为C代码的函数(我只有该库的.lib)。 最佳答案 如果头文件正确,它将工作,假设C编译

c++ - 我可以在 VS2008 的 C 代码中使用 C++ vector 吗

我在vs2008中运行C代码。我很好奇我是否可以将此代码与C++代码混合 最佳答案 简短的回答是肯定的。但是,存在一些细微差别。C++通常支持C的很大一个子集。这意味着您几乎可以从C++代码中获得C中可用的任何内容(例如函数、库等)。从这一点开始,您有两个选择,一个简单,一个更难。选项#1-使用C++编译器。只需将您的代码视为C++。简单地说-使用C++编译器。选项#2-混合使用C和C++。您可以编写C代码并使用C++编译器对其进行编译。在需要使用C++组件的地方使用C-likeC++。例如,您的设置可能类似于以下内容:head1.

c++ - 这是shell排序还是插入排序?

我刚开始学习排序算法并在网上找到了一个。起初我以为这是一个shell排序,但它缺少“k”的明显间隔和数组的一半,所以我不确定它是否是。我的第二个猜测是插入排序,但我只是来这里仔细检查一下:for(n=1;n0)&&(A[k-1]>key)){A[k]=A[k-1];k=k-1;}A[k]=key;}此外,如果您能解释为什么这也会有帮助 最佳答案 ShellSort由对原始数组的子数组执行的许多插入排序组成。您提供的代码是插入排序。要获得shell排序,它会粗略地让您的代码周围的其他for更改h(shell排序中的间隙)和子数组的起始

C++ 引用和 C 指针

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:WhatarethedifferencesbetweenpointervariableandreferencevariableinC++?我开始研究C中的指针(无论如何都是基础知识)并开始阅读C++。我正在阅读的这本书会直接跳转到引用文献,而在索引中查找直到后来才看到指针。在C中,我想如果我想做一个按引用传递的函数,我将不得不使用指针作为参数,例如voidswapAandB(int*A,int*B){//dosomething}但是C++书决定将对原始变量的引用放入函数中。例如voidswapAandB(in